package com.hanyizhu.demostore.service;

import com.hanyizhu.demostore.entity.User;


/**用户模块业务层接口
 * @author lenovo*/
public interface IUserService {
    /**
     * 用户注册方法
     * @param user 用户的数据对象
     */
    void reg(User user);

    /**
     * 用户登陆
     * @param username 用户的名字
     * @param password 用户的密码
     * @return 返回匹配的用户信息数据 如果没有则返回NUll
     */
    User login(String username,String password);

    /**
     * 用户修改密码
     * @param uid 用户id
     * @param username 用户名
     * @param oldpassword 旧的用户密码
     * @param newpassword 修改的新密码
     */
    void changePassword(Integer uid,
                        String username,
                        String oldpassword,
                        String newpassword);

    /**
     * 根据用户的id查询用户信息
     * @param uid 用户id
     * @return 用户信息数据
     */
    User getByUid(Integer uid);

    /**
     * 更新用户的数据操作
     * @param user 用户的id
     * @param uid 用户的名称
     * @param username 用户对象数据
     */
    void changeInfo(User user, Integer uid, String username);

    /**
     * 用户上传头像
     * @param uid 用户的id
     * @param avatar 用户头像
     * @param username 操作用户名字
     */
    void changeAvatar(Integer uid,String avatar,String username);
}
